home *** CD-ROM | disk | FTP | other *** search
Wrap
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>4.  Version 2.0</title> <link rel="stylesheet" href="gimp-help-plain.css" type="text/css" /> <link rel="stylesheet" href="gimp-help-screen.css" type="text/css" /> <link rel="stylesheet" href="gimp-help-custom.css" type="text/css" /> <link rel="alternate stylesheet" href="gimp22.css" type="text/css" title="gimp22" /> <meta name="generator" content="DocBook XSL Stylesheets V1.73.2" /> <link rel="start" href="index.html" title="GNU Image Manipulation Program" /> <link rel="up" href="gimp-introduction-history.html" title="Appendix A.  GIMP History" /> <link rel="prev" href="gimp-introduction-history-1-0.html" title="3.  The One to Change the World" /> <link rel="next" href="gimp-introduction-history-2-2.html" title="5.  What's New in GIMP 2.2?" /> </head> <body> <div class="navheader"> <table width="100%" summary="Navigation header"> <tr> <th colspan="3" align="center">4.  <span lang="en" xml:lang="en">Version 2.0</span> </th> </tr> <tr> <td width="20%" align="left"><a accesskey="p" href="gimp-introduction-history-1-0.html"><img src="../images/prev.png" alt="Prev" /></a> </td> <th width="60%" align="center">Appendix A.  <span lang="en" xml:lang="en">GIMP History</span> </th> <td width="20%" align="right"> <a accesskey="n" href="gimp-introduction-history-2-2.html"><img src="../images/next.png" alt="Next" /></a></td> </tr> </table> <hr /> </div> <div class="sect1" lang="en" xml:lang="en"> <div class="titlepage"> <div> <div> <h2 class="title" style="clear: both"><a id="gimp-introduction-history-2-0"></a>4.  <span lang="en" xml:lang="en">Version 2.0</span> </h2> </div> <div> <div class="revhistory"> <table border="1" width="100%" summary="Revision history"> <tr> <th align="left" valign="top" colspan="3"> <b>Revision History</b> </th> </tr> <tr> <td align="left">Revision $Revision: 2419 $</td> <td align="left">2006-08-02</td> <td align="left">romanofski</td> </tr> </table> </div> </div> </div> </div> <p> First, a statistic: the <acronym class="acronym">GIMP</acronym> code base contains about 230,000 lines of C code, and most of these lines were rewritten in the evolution from 1.2 to 2.0. From the user's point of view, however, <acronym class="acronym">GIMP</acronym> 2 is fundamentally similar to <acronym class="acronym">GIMP</acronym> 1; the features are similar enough that <acronym class="acronym">GIMP</acronym> 1 users won't be lost. As part of the restructuring work, the developers cleaned up the code greatly, an investment that, while not directly visible to the user, will ease maintenance and make future additions less painful. Thus, the <acronym class="acronym">GIMP</acronym> 2 code base is significantly better organized and more maintainable than was the case for <acronym class="acronym">GIMP</acronym> 1.2. </p> <div class="variablelist"> <dl> <dt> <span class="term">Basic tools</span> </dt> <dd> <p> The basic tools in <acronym class="acronym">GIMP</acronym> 2 are not very different from their predecessors in <acronym class="acronym">GIMP</acronym> 1. The “<span class="quote">Select Regions by Color</span>” tool is now shown in the <acronym class="acronym">GIMP</acronym> toolbox, but was already included in <acronym class="acronym">GIMP</acronym> 1 as a menu option in the Select menu. The Transform tool has been divided into several specialized tools: Rotation, Scale, Shearing and Perspective. Color operations are now associated with layers in the menu <span class="guimenu">Layer</span> → <span class="guisubmenu">Colors</span>, but this is merely a cleanup: they were already present in the Image menu (illogically, since they are layer operations). Thus no completely new tools appear in this release, but two of the tools have been totally revamped compared to the older versions: the Text tool and the Path tool. More on this below. </p> <p> The user interface for tools has also changed significantly. The “<span class="quote">Tool Options</span>” dialog box was modified to not resize itself when a new tool is chosen. Most users felt that the window changing size when a new tool was selected was annoying. Now, by default the “<span class="quote">Tool Options</span>” dialog is constantly open and docked under the toolbox, where it can easily be found. </p> </dd> <dt> <span class="term">Tool options</span> </dt> <dd> <p> The “<span class="quote">Tool Options</span>” for many tools have new possibilities that weren't available in <acronym class="acronym">GIMP</acronym> 1. Without being exhaustive, here are the most noticeable improvements. </p> <p> All selection tools now have mode buttons: Replace, Add, Subtract and Intersect. In <acronym class="acronym">GIMP</acronym> 1 the only way to change the selection mode was to use the <span class="keycap"><strong>Ctrl</strong></span> or <span class="keycap"><strong>Shift</strong></span> buttons, which could get very confusing because those buttons also had other functions. For example, pressing and holding the <span class="keycap"><strong>Shift</strong></span> key while using the Rectangle selection tool forces the rectangle to be a square. Thus, to add a square selection you would first press <span class="keycap"><strong>Shift</strong></span>, then click the mouse, then release <span class="keycap"><strong>Shift</strong></span>, then press <span class="keycap"><strong>Shift</strong></span> again, then sweep out the selection with the mouse, then release <span class="keycap"><strong>Shift</strong></span>. It can now be done more easily. </p> <p> For transformation tools, buttons now control which object (layer, selection or path) is affected by the transformation. You can for example transform a rectangular selection to various quadrilateral shapes. Path transformation in particular is now easier than it was before. </p> <p> “<span class="quote">Fade out</span>” and “<span class="quote">Paint Using Gradient</span>” are now available for all drawing tools. In fact, all drawing tools now have their own individual brush, gradient and pattern settings, in contrast to <acronym class="acronym">GIMP</acronym> 1 where there was a single global setting that applied to all drawing tools. Now you can select different brushes for the Pencil and the Paint Brush, or different patterns for the Clone and Fill tools. You can change these setting by using your mouse wheel over the relevant resource button (this is most useful for quickly and easily choosing a brush). </p> </dd> <dt> <span class="term">User Interface</span> </dt> <dd> <p> The most visible changes in <acronym class="acronym">GIMP</acronym> 2 concern the user interface. <acronym class="acronym">GIMP</acronym> now uses the <acronym class="acronym">GTK2+</acronym> graphical toolkit in place of <acronym class="acronym">GTK+</acronym>. One of the nice features brought by the new libraries is dockable dialogs, and tab navigation between dialogs docked in the same window — a feature present in several popular web browsers. <acronym class="acronym">GIMP</acronym> 1 was famous for opening dialogs anywhere on your screen; <acronym class="acronym">GIMP</acronym> 2 can be told to use fixed boxes. Dialogs now include a little tab-customization menu, which provides maximum flexibility in organizing your workspace. </p> <p> The Image window has some interesting new features. These are not necessarily activated by default, but they can be checked as options in the <span class="guimenu">Preferences</span> → <span class="guisubmenu">Interface</span> → <span class="guisubmenu">Image Windows</span> menu. “<span class="quote">Show Brush Outline</span>”, for example, allows you to see the outline of the brush when using drawing tools. In the “<span class="quote">Appearance</span>” sub-section, you can toggle whether a menu bar is present at the top of image windows. You can set an option to work with the new fullscreen mode. Viewing options are also available from all image windows using right click to bring up the menu, then selecting “<span class="quote">View</span>”. The so-called “<span class="quote">image</span>” menu is also available by clicking on a little triangle in the top left corner of the drawing space. The setting you choose in the “<span class="quote">Preferences</span>” dialog is used as the default value, and options you set from an image are used only for that image. (You can also toggle fullscreen mode by using the <span class="keycap"><strong>F11</strong></span> key; the <span class="keycap"><strong>Esc</strong></span> key also exits fullscreen mode). </p> <p> <acronym class="acronym">GIMP</acronym> 2 features keyboard accelerators to ease menu access. If you find that navigating through menus using your mouse is onerous, the solution may be to use the keyboard. For example, if the menu bar is present, to create a new image just hit <span class="keycap"><strong>Alt</strong></span>+<span class="keycap"><strong>F</strong></span>+<span class="keycap"><strong>N</strong></span>. Without the menu bar, hit <span class="keycap"><strong>Shift</strong></span>+<span class="keycap"><strong>F10</strong></span> to open the top-left menu, and use direction keys or <span class="keycap"><strong>F</strong></span> then <span class="keycap"><strong>N</strong></span> to create the new image. Keyboard accelerators are different from shortcuts: accelerators are useful to navigate through menus, whereas shortcuts call a specific menu item directly. For example, <span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>N</strong></span> is a shortcut, and the quickest way to open a new image. </p> <p> To ease access to your most commonly used menu items, the <acronym class="acronym">GIMP</acronym> has provided dynamic shortcuts for many years. When a menu is open, you can hover over the desired menu item and hold down your shortcut combination. This feature is still present, but is deactivated by default in the <acronym class="acronym">GIMP</acronym> 2.0, to avoid accidental re-assigning of existing shortcuts. </p> <p> The <acronym class="acronym">GIMP</acronym> also ships with a number of sets of key-bindings for its menus. If you would like to replace the default <acronym class="acronym">GIMP</acronym> keybindings by Photoshop bindings, for example, you can move the file <code class="filename">menurc</code> in your user data directory to <code class="filename">oldmenurc</code>, rename <code class="filename">ps-menurc</code> to <code class="filename">menurc</code> and restart <acronym class="acronym">GIMP</acronym>. </p> </dd> <dt> <span class="term">Handling Tabs and Docks</span> </dt> <dd> <p> The <acronym class="acronym">GIMP</acronym> 2.0 introduces a system of tabbed dialogs to allow you to make your workspace look the way you want it to be. Almost all dialogs can be dragged to another dialog window and dropped to make a tabbed dialog set. </p> <p> Furthermore, at the bottom of each dialog, there is a dockable area: drag and drop tabs here to attach dialogs beneath the bottom tab group. </p> </dd> <dt> <span class="term">Scripting</span> </dt> <dd> <p> “<span class="quote">Python-fu</span>” is now the standard external scripting interface for <acronym class="acronym">GIMP</acronym> 2. This means that you can now use <acronym class="acronym">GIMP</acronym> functions in Python scripts, or conversely use Python to write <acronym class="acronym">GIMP</acronym> plug-ins. Python is relatively easy to understand even for a beginner, especially in comparison to the Lisp-like Scheme language used for Script-Fu in <acronym class="acronym">GIMP</acronym> 1. The Python bindings are augmented by a set of classes for common operations, so you are not forced to search through the complete <acronym class="acronym">GIMP</acronym> Procedural Database in order to carry out basic operations. Moreover, Python has integrated development environments and a gigantic library, and runs not only on Linux but also on Microsoft Windows and Apples Mac OS X. The biggest drawback, for <acronym class="acronym">GIMP</acronym> 2.0, is that the standard user interface offered in Python-fu does not use the complete power of the Python language. The interface is currently designed to support simple scripts, but a more sophisticated version is a goal of future development. </p> <p> <acronym class="acronym">GIMP</acronym>-Perl is no longer distributed with the standard <acronym class="acronym">GIMP</acronym> 2 distribution, but is available as a separate package. Currently, <acronym class="acronym">GIMP</acronym>-Perl is supported only on Unix-like operating systems. It includes both a simple scripting language, and the ability to code more polished interfaces using the <acronym class="acronym">Gtk2</acronym> perl module. Direct pixel manipulation is available through the use of <acronym class="acronym">PDL</acronym>. </p> <p> Script-Fu, based on “<span class="quote">Scheme</span>”, has the same drawbacks as before: not intuitive, hard to use and lacking a real development environment. It does, however, have one major advantage compared to Python-fu: Script-Fu scripts are directly interpreted by <acronym class="acronym">GIMP</acronym> and do not require any additional software installation. Python-fu requires that you install a package for the Python language. </p> </dd> <dt> <span class="term">The Text Tool</span> </dt> <dd> <p> The big problem with the standard text tool in <acronym class="acronym">GIMP</acronym> 1 was that text could not be modified after it was rendered. If you wanted to change anything about the text, all you could do was “<span class="quote">undo</span>” and try again (if you were lucky enough to have sufficient undo history available, and then of course you would also undo any other work you had done in the meantime). In <acronym class="acronym">GIMP</acronym> 1.2 there was also a “<span class="quote">dynamic text</span>” plug-in that allowed you to create special text layers and keep them around indefinitely, in a modifiable form, but it was buggy and awkward to use. The second generation Text tool is an enhanced combination of the old Text tool and the Dynamic Text plugin. Now all options are available in the “<span class="quote">Tool Options</span>” : font, font size, text color, justify, antialiasing, indent, spacing. To create a new text item, click in the image and a little editor pops up. Text appears on the image while you are editing (and carriage returns are handled properly!). A new dedicated layer is created; this layer resizes dynamically to match the text you key in. You can import plain text from a file, and you can even do things like writing from right to left in Arabic. If you select a text layer, clicking on it opens the editor, and you can then modify your text. </p> </dd> <dt> <span class="term">The Path Tool</span> </dt> <dd> <p> The second generation Path tool has a completely new interface. The first major difference you notice is that paths are no longer required to be closed. A path can be made up of a number of disjoint curve segments. The next major difference is that now the path tool has three different modes, Design, Edit and Move. </p> <p> In Design mode, you can create a path, add nodes to an existing path and modify the shape of a curve either by dragging edges of the curve or dragging the “<span class="quote">handles</span>” of a node. </p> <p> In Edit mode, you can add nodes in the middle of curve edges, and remove nodes or edges, as well as change the shape of the curve. You can also connect two path components. </p> <p> The third mode, Move, is, as you might expect, used to move path components. If your path has several components, you can move each path component separately. To move all components at once, use the <span class="keycap"><strong>Shift</strong></span> key. </p> <p> Two other path-related features are new in the <acronym class="acronym">GIMP</acronym> 2.0. The <acronym class="acronym">GIMP</acronym> can not only import an SVG image as a raster image, but can also keep SVG paths intact as <acronym class="acronym">GIMP</acronym> paths. This means that the <acronym class="acronym">GIMP</acronym> is now more able than ever to complement your favorite vector drawing tool. The other feature which has made the path tool much better is the introduction of vector-based stroking. In previous versions, stroking paths and selections was a matter of drawing a brush-stroke along the path. This mode is still available, but it is now possible to stroke a curve accurately, using the vector library <acronym class="acronym">libart</acronym>. </p> </dd> <dt> <span class="term">Other improvements</span> </dt> <dd> <p>Some other improvements in brief:</p> <div class="itemizedlist"> <ul type="disc"> <li> <p> Higher-quality antialiasing in some places — most notibly in the Text tool. </p> </li> <li> <p> Icons and menus are skinnable. You can create your own icon set and apply it to the toolbox using the <span class="guimenu">Preference</span> → <span class="guisubmenu">Interface</span> menu option. A theme called “<span class="quote">small</span>” is included with the standard distribution. </p> </li> <li> <p> An image can be saved as a template and used to create new images. </p> </li> <li> <p> There are four new combination modes for layers that lie one on top of another within an image: “<span class="quote">Hard Light</span>”, “<span class="quote">Soft Light</span>”, “<span class="quote">Grain Extract</span>” and “<span class="quote">Grain Merge</span>”. </p> </li> <li> <p> If there is an active selection, you can crop the image directly to the selection size using image menu <span class="guimenu">Image</span> → <span class="guisubmenu">Crop</span>. </p> </li> <li> <p> As well as being able to create guides, there's now a grid functionality in <acronym class="acronym">GIMP</acronym>. It is complementary to the guides functionality and makes it easier to position objects so that they align perfectly. </p> </li> <li> <p> The Layers dialog is more coherent, in that there are no more hidden functions accessed only with right click on the miniature image of the layer that appears there. You can now handle layer operations directly from the image menu: Layer Mask, Transparency, Transformation and Layer Color operations are directly in the Layer submenu. </p> </li> <li> <p> Color display filters are now available from the image menu <span class="guimenu">View</span> → <span class="guisubmenu">Display Filters</span>. Using them, you can simulate different gamma values, different contrasts, or even color deficient vision, without altering your original image. This actually has been a feature of the <acronym class="acronym">GIMP</acronym> developer versions for a long time, but it has never been stable enough to appear in a stable version of the <acronym class="acronym">GIMP</acronym> before. </p> </li> <li> <p> The color selection dialog has a new CMYK mode, associated with the printer icon. </p> </li> <li> <p> Data stored in <acronym class="acronym">EXIF</acronym> tags by digital cameras are now handled in read and write mode for JPEG files. </p> </li> <li> <p> MNG animations are now supported. The MNG file format can be considered as animated PNG. It has all the advantages of PNG over GIF, such as more colors, 256 levels of transparency, and perhaps most importantly, lack of patent encumbrance. The format is a web standard and all recent popular web browsers support it. </p> </li> <li> <p> The <acronym class="acronym">GIMP</acronym> Animation package now does onion-skinning, a bluescreen feature was added as well as audio support. </p> </li> <li> <p> A channel mixer filter, previously available from the web as an add-on, appears in <span class="guimenu">Filters</span> → <span class="guisubmenu">Colors</span>. </p> </li> </ul> </div> </dd> </dl> </div> </div> <div class="navfooter"> <hr /> <table width="100%" summary="Navigation footer"> <tr> <td width="40%" align="left"><a accesskey="p" href="gimp-introduction-history-1-0.html"><img src="../images/prev.png" alt="Prev" /></a> </td> <td width="20%" align="center"> <a accesskey="u" href="gimp-introduction-history.html"> <img src="../images/up.png" alt="Up" /> </a> </td> <td width="40%" align="right"> <a accesskey="n" href="gimp-introduction-history-2-2.html"><img src="../images/next.png" alt="Next" /></a></td> </tr> <tr> <td width="40%" align="left" valign="top"><a accesskey="p" href="gimp-introduction-history-1-0.html">3.  <span lang="en" xml:lang="en">The One to Change the World</span> </a> </td> <td width="20%" align="center"> <a accesskey="h" href="index.html"> <img src="../images/home.png" alt="Home" /> </a> </td> <td width="40%" align="right" valign="top"> <a accesskey="n" href="gimp-introduction-history-2-2.html">5.  <span lang="en" xml:lang="en">What's New in GIMP 2.2?</span> </a></td> </tr> </table> </div> </body> </html>